Skip to content

Converter : Replacement du champ missionId par operationId dans le RC-RI#404

Merged
Clemsazert merged 2 commits into
mainfrom
converter/rc-ri-operationid
Apr 28, 2026
Merged

Converter : Replacement du champ missionId par operationId dans le RC-RI#404
Clemsazert merged 2 commits into
mainfrom
converter/rc-ri-operationid

Conversation

@Clemsazert
Copy link
Copy Markdown
Contributor

@Clemsazert Clemsazert commented Apr 24, 2026

🔎 Détails

  • Ajout de la logique dans les 2 sens de ciruclation pour remplacer le champ operationId par missionId lors de la conversion RC-RI <-> RS-RI

📸 Screenshot

Sens 15 vers 18
❯ curl -X POST http://localhost:8083/convert \
     -H "Content-Type: application/json" \
     -d @payload_rs_ri.json
{
  "converted_messages": [
    {
      "content": [
        {
          "jsonContent": {
            "embeddedJsonContent": {
              "message": {
                "kind": "Report",
                "messageId": "fr.health.samuA_2608323d-507d-4cbf-bf74-52007f8124ea",
                "recipient": [
                  {
                    "URI": "hubsante:fr.fire.sdisZ",
                    "name": "sdisZ"
                  }
                ],
                "resourcesInfoCisu": {
                  "caseId": "fr.health.samu440.DRFR154402413800236",
                  "resource": [
                    {
                      "contact": {
                        "details": "0762865426",
                        "type": "TEL"
                      },
                      "datetime": "2024-05-18T18:20:00+02:00",
                      "freetext": [
                        "Eric AZERTY, Marie-Jo ANELI, Pierre LOUITUT"
                      ],
                      "name": "VLM2",
                      "operationId": "DRFR15DDXAAJJJ0000.M001", # <= transformation du champ en operationId
                      "orgId": "fr.health.samu440",
                      ....
Sens 18 vers 15
❯ curl -X POST http://localhost:8083/convert \
     -H "Content-Type: application/json" \
     -d @payload_rc_ri.json
{
  "converted_messages": [
    {
      "content": [
        {
          "jsonContent": {
            "embeddedJsonContent": {
              "message": {
                "kind": "Report",
                "messageId": "fr.fire.sdisZ_2608323d-507d-4cbf-bf74-52007f8124ea",
                "recipient": [
                  {
                    "URI": "hubsante:fr.health.samuA",
                    "name": "samuA"
                  }
                ],
                "resourcesInfo": {
                  "caseId": "fr.health.samu440.DRFR154402413800236",
                  "resource": [
                    {
                      "centerCity": "44109",
                      "datetime": "2024-05-18T18:22:00+02:00",
                      "missionId": "DRFR15DDXAAJJJ0000.M001", # <= CHAMP OPERATION_ID TRANSFORMÉ EN MISSION_ID
                      "name": "VLM1",
                      "orgId": "fr.health.samu440",
                      "resourceId": "fr.health.samu440.resource.VLM1",
                      "state": [
                        {
                          "availability": false,
                          "datetime": "2024-05-18T18:10:00+02:00",
                          "status": "DECLENCHE"
                        }
                      ],
                      "team": {
                        "medicalLevel": "MED"
                      },
                      "vehicleType": "SMUR"
                    }
...

🔗 Ticket associé

Asana

@github-actions
Copy link
Copy Markdown

There is no coverage information present for the Files changed

Total Project Coverage 52.5% 🍏

@github-actions
Copy link
Copy Markdown

There is no coverage information present for the Files changed

Total Project Coverage 52.5% 🍏

@github-actions
Copy link
Copy Markdown

Coverage

Converter - python code coverage
FileStmtsMissBranchBrPartCoverMissing
constants.py4000100% 
conversion_mixin.py2912196%26
converter.py6736195%26, 94–95
database.py32224431%12, 16, 18–21, 23, 25, 27, 29–38, 40–41, 49
logging_config.py3528294%29, 36
utils.py164374698%57, 108, 120
cisu
   base_cisu_converter.py3330090%7, 25, 31
   constants.py4000100% 
   identical_cisu_converter.py9000100% 
   utils.py15060100% 
cisu/create_case
   create_case_cisu_constants.py31000100% 
   create_case_cisu_converter.py145132199%112
cisu/reference
   reference_converter.py920077%9, 13
cisu/resources_info
   resources_info_cisu_constants.py12000100% 
   resources_info_cisu_converter.py166234298%171, 356
   resources_info_cisu_helper.py49318293%58, 63, 66
cisu/resources_status
   resources_status_constants.py4000100% 
   resources_status_converter.py4114097%33
conversion_strategy
   cisu_conversion_strategy.py49222295%68, 93
   conversion_strategy.py7020100% 
   health_conversion_strategy.py460240100% 
models
   persisted_message.py13000100% 
repositories
   message_repository.py701212282%90–91, 98, 118–120, 122–123, 125, 171–173
versions
   base_message_converter.py831214285%13, 72–74, 86, 98, 102, 106, 110, 114, 118, 124
   error_converter.py510080%7
   identical_message_converter.py15000100% 
   utils.py26512280%34–37, 43
versions/create_case_health
   constants.py4000100% 
   create_case_health_converter.py1780800100% 
   create_case_health_update_converter.py5000100% 
versions/create_case_health/v1_v2
   constants.py17000100% 
   utils.py460222100% 
versions/create_case_health/v2_v3
   constants.py29000100% 
versions/geo_positions_update
   geo_positions_update_constants.py4000100% 
   geo_positions_update_converter.py49312493%31, 42, 79
versions/geo_resources_details
   geo_resources_details_constants.py4000100% 
   geo_resources_details_converter.py27040100% 
versions/reference
   reference_constants.py2000100% 
   reference_converter.py13000100% 
versions/resources_engagement
   resources_engagement_constants.py3000100% 
   resources_engagement_converter.py22021100% 
versions/resources_info
   resources_info_constants.py20000100% 
   resources_info_converter.py870363100% 
versions/resources_request
   resources_request_constants.py2000100% 
   resources_request_converter.py21000100% 
versions/resources_response
   resources_response_constants.py4000100% 
   resources_response_converter.py16020100% 
versions/resources_status
   resources_status_constants.py10000100% 
   resources_status_converter.py39000100% 
TOTAL1765784323795% 

@Clemsazert Clemsazert changed the title RC-RI : Replace missionId by operationId RC-RI : Replacement du champ missionId par operationId Apr 26, 2026
@Clemsazert Clemsazert marked this pull request as ready for review April 26, 2026 10:50
@Clemsazert Clemsazert changed the title RC-RI : Replacement du champ missionId par operationId Converter : Replacement du champ missionId par operationId dans le RC-RI Apr 28, 2026
@Clemsazert Clemsazert merged commit 5739d95 into main Apr 28, 2026
3 checks passed
@Clemsazert Clemsazert deleted the converter/rc-ri-operationid branch April 28, 2026 13:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants